#!/bin/bash

# 询问是否已经修改创建容器命令
read -p "是否已经修改创建容器命令? (Y/N): " answer
if [[ $answer != "Y" && $answer != "y" ]]; then
    echo "已取消执行"
    exit 1
fi

# 获取jar包名称
jar_file_name=$(ls *.jar 2>/dev/null)
if [[ -z $jar_file_name ]]; then
    echo "请传入jar包"
    exit 1
fi

# 获取Dockerfile文件名称
dockerfile_name=$(ls Dockerfile 2>/dev/null)
if [[ -z $dockerfile_name ]]; then
    echo "请传入Dockerfile文件"
    exit 1
fi

# 获取传入的参数
image_or_container_name=${jar_file_name%%.*}

# 功能1：删除原有容器
container_id=$(docker ps -aqf "name=$image_or_container_name")
if [[ ! -z $container_id ]]; then
    docker stop $container_id
    docker rm $container_id
fi

# 功能2：删除原有的镜像
image_tag=$(docker images -q $image_or_container_name)
if [[ ! -z $image_tag ]]; then
    docker rmi -f $image_tag
fi

# 功能3：创建镜像并运行容器
docker build -t $image_or_container_name .
docker run -d -p 8060:8060  --name $image_or_container_name $image_or_container_name